package vip.xiaonuo.supplier.modular.base.carrier.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import vip.xiaonuo.supplier.modular.base.carrier.entity.SupplierCarrier;
import vip.xiaonuo.supplier.modular.base.carrier.param.SupplierCarrierAddParam;
import vip.xiaonuo.supplier.modular.base.carrier.param.SupplierCarrierEditParam;
import vip.xiaonuo.supplier.modular.base.carrier.param.SupplierCarrierIdParam;
import vip.xiaonuo.supplier.modular.base.carrier.param.SupplierCarrierPageParam;

import java.util.List;

/**
 * 承运人Service接口
 *
 * @author Mr.wu
 * @date  2025/03/15 19:09
 **/
public interface SupplierCarrierService extends IService<SupplierCarrier> {

    /**
     * 获取承运人分页
     *
     * @author Mr.wu
     * @date  2025/03/15 19:09
     */
    Page<SupplierCarrier> page(SupplierCarrierPageParam supplierCarrierPageParam);

    /**
     * 添加承运人
     *
     * @author Mr.wu
     * @date  2025/03/15 19:09
     */
    void add(SupplierCarrierAddParam supplierCarrierAddParam);

    /**
     * 编辑承运人
     *
     * @author Mr.wu
     * @date  2025/03/15 19:09
     */
    void edit(SupplierCarrierEditParam supplierCarrierEditParam);

    /**
     * 删除承运人
     *
     * @author Mr.wu
     * @date  2025/03/15 19:09
     */
    void delete(List<SupplierCarrierIdParam> supplierCarrierIdParamList);

    /**
     * 获取承运人详情
     *
     * @author Mr.wu
     * @date  2025/03/15 19:09
     */
    SupplierCarrier detail(SupplierCarrierIdParam supplierCarrierIdParam);

    /**
     * 获取承运人详情
     *
     * @author Mr.wu
     * @date  2025/03/15 19:09
     **/
    SupplierCarrier queryEntity(String id);
}
